// pages/pay/pay.js
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    
    buyNow:[],
    defaultAddress:null,
    allGoodsPrice:0,
    yunfei:12,
    allGoodsAndYunPrice:0,
    remark:"" //用户的备注
  },

  
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
      //获取数据
      var that=this;
      wx.getStorage({
        key: 'buyNow',
        success: function(res) {
         that.setData({
           buyNow:res.data
         }) 
          that.getPrice();
        },
      })
      // 获取默认地址
    
    that.getDefaultAddress();
   
  },
  // 获取用户输入的备注
  Input(e){
    this.setData({
      remark: e.detail.value
    })
  },
  //创建订单  
  creatOrder(){
      //首先收集创建订单这个接口需要的参数
      //默认创建订单需要四个参数  1 商品的信息 2 收货地址和收货人信息 3 用户备注信息 4 token
      // 详细参考接口API文档
      var defaultAddress=this.data.defaultAddress;  //地址信息
      var remark=this.data.remark;  //备注
      var oderShop=this.data.buyNow;  //商品的信息
      console.log(oderShop)
      if(!defaultAddress){
        wx.showToast({
          title: '请先确认收货地址',
          duration:2000
        })
        return ;
      }
      //制作创建订单需要的参数
      var paramsData={
        address: defaultAddress.address,
        linkMan: defaultAddress.linkMan,
        mobile: defaultAddress.mobile,
        code:defaultAddress.code,
        provinceId: defaultAddress.provinceId,
        cityId: defaultAddress.cityId,
        token:app.globalData.token,
       // token:"ca718ba1-03b3-4c59-83a9-55a8a9f91290" ,
        remark: remark , //用户备注信息
        goodsJsonStr:[]  //商品信息在下面构建
      }
      //商品信息格式是{"goodsId":11,"number":2,"propertyChildIds":"1912:8754","logisticsType":0}, 
      //把商品信息按照格式重新构建
      var goods=[]
    
    for (var i = 0; i < oderShop.length;i++){
      var str = "";
      for (var j = 0; j < oderShop[i].itemChecked.length; j++) {
        str += oderShop[i].itemChecked[j].propertyId + ":" + oderShop[i].itemChecked[j].id + ","
      }
        var temp={
          "goodsId": oderShop[i].shopInfo.id,
          "number": oderShop[i].buyNum,
          "propertyChildIds": str,
          "logisticsType":0
        };
        goods.push(temp)

    }
   
    //吧构建好的商品信息放到参数中  根据请求，必须是字符串格式
    paramsData.goodsJsonStr = JSON.stringify(goods);
    //打印观察一下所有参数
    console.log(paramsData)
    wx.request({
      url: app.globalData.BaseUrl + '/order/create',
      data: paramsData,
      //因为必须是post请求，所有必须加请求头
      header: {
        'content-type': 'application/x-www-form-urlencoded'
      },
      method: 'POST',
      success: function(res) {
        console.log(res.data)
        if(res.data.code==0){
          wx.navigateTo({
            url: '/pages/order/order',
          })
        }
      },
      fail: function(res) {},
      complete: function(res) {},
    })

  },

  //价格计算
  getPrice(){
    var sum=0;
    var buyNow=this.data.buyNow;
    for(var i=0;i<buyNow.length;i++){
      sum += buyNow[i].price * buyNow[i].buyNum;
    }
    console.log(sum)
    //总价大于98免运费
    if(sum>98){
      var yunfei=0;
    }else{
      var yunfei=8
    }
    this.setData({
      allGoodsPrice:sum,
      yunfei:yunfei,
      allGoodsAndYunPrice:yunfei+sum
    })
  },
  getDefaultAddress(){
    //使用全局token获取默认收货地址
    wx.showLoading({
      title: '地址加载中！！！',
    })
    wx.request({
      url: app.globalData.BaseUrl + '/user/shipping-address/default',
    //  data: { token: "ca718ba1-03b3-4c59-83a9-55a8a9f91290" },
    data:{token:app.globalData.token},
      success:(res=>{
        wx.hideLoading()
        console.log(res.data)
        this.setData({
          defaultAddress:res.data.data
        })
      }),
      fail:(res=>{
        wx.hideLoading();
        this.getDefaultAddress()
      })
    })
    
    // 1 先登录获取微信code  2 登录获取到token  3 根据token作为参数获取默认地址
    // wx.login({
    //   success(res) {
    //      if(res.code){
    //        wx.request({
    //          url: app.globalData.BaseUrl + 'user/wxapp/login',
    //          data: {code:res.code},
    //          success: (res => {
    //            console.log(res.data)
    //            //获取到token
    //            var token=res.data.data.token;
    //             // 根据token获取默认地址
    //             wx.request({
    //               url: app.globalData.BaseUrl + '/user/shipping-address/default',
    //               data: { token: token},
    //               success: function (res) {
    //                 console.log(res.data)
    //               }
    //             })

    //          })
    //        })

    //      }
    //   }
    // })

  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})